##################################### # Test Macro for UniTerm V2.0c 002 # # Copyright 1988 Simon Poole # # # ##################################### # turn history recording on history(1) call(20) echo('\007\r\nSample UniTerm macro file') echo('\r\n-------------------------\007') # # Reset the modem # copy(1,'ATZ') copy(2,'OK') set(2,5) call(4) # if(@1) echo('\r\nReset\r\n') jump(2) # echo('\r\nToo many retries\r\n') exit(-1) # # Dial the number and wait for CONNECT # (in real life you would use the dial() function) # :2 # Get number from user if(!input('Enter number (2512002)')) exit(0) # if the string is empty use the default if(compare($T,'')) concat('2512002','') # Hayes want a ATD concat('ATD',$T) # dial............ copy(1,$T) copy(2,'CONNECT') set(2,30) call(4) if(!@1) echo('\r\nFailed\r\n')exit(1) # # Login # # this is for our LocalNet 20 system :6 send('\r') if(!get('#',2)) break(100,FALSE) if(!get('#',2)) send('\001\001') send('echo off\r') if(!get('#',2)) echo('\r\nSomething is wrong!') hangup() exit(-1) # call the system send('call e780\r') # should have a counter here, but you can always stop with ^C if(!get('COMPLETED',3)) send('done\r') jump(6) if(!get('ogin',3)) send('done\r') jump(6) send('poole\r') # # should send my password here # # Finished! exit(0) ######################################################### # # # Send a string to a Hayes compatible modem # # # ######################################################### # # @1 number of retries # @2 timeout # $1 string to send (telephone number...) # $2 string to wait for (CONNECT) # :4 set(1,3) :5 echo('\r\nTry: ') echo("add(4,-@1)) set(1,add(@1,-1)) wait(10) # send attn string echo('\r\nSending +++') send('+++') # we might get a OK here... get('OK',2) echo('\r\nSending ') echo($1) send($1) send('\r') if(and(!get($2,@2),@1)) jump(5) return() ######################################################## # # # Home cursor and clear screen # # # ######################################################## :20 echo('\033[f\033[2J') return() ########################################################
A very useful aspect of the macro processor, is that you can assign a string like %R('TEMPUS.PRG',' ') to a function key and run your favourite editor just by pressing one key.